package cc.rengu.redp.bizimpl.csmc.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;
import java.io.Serializable;

/**
 * 对账系统状态 ReconSysStat实体
 *
 * @author zhuyaping
 * @date 2019年07月30日05时42分
 * @see
 */

@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_c_recon_sys_stat")
public class ReconSysStat implements Serializable {

    @TableId(value = "id",type = IdType.ASSIGN_ID)
    @NotBlank(message = "{required}")
    @Size(max = 32, message = "{noMoreThan}")
    private String id;

    /**
     * @MetaData(value = "机构标识")
     */
    @TableField(value = "inst_id")
    @NotBlank(message = "{required}")
    @Size(max = 14, message = "{noMoreThan}")
    private String instId;

    /**
     * @MetaData(value = "对账系统标识")
     */
    @TableField(value = "recon_sys_id")
    @NotBlank(message = "{required}")
    @Size(max = 64, message = "{noMoreThan}")
    private String reconSysId;

    /**
     * @MetaData(value = "对账文件日期")
     */
    @TableField(value = "recon_file_date")
    @NotBlank(message = "{required}")
    @Size(max = 8, message = "{noMoreThan}")
    private String reconFileDate;

    /**
     * @MetaData(value = "对账文件状态")
     */
    @TableField(value = "recon_file_status")
    @NotBlank(message = "{required}")
    @Size(max = 1, message = "{noMoreThan}")
    private String reconFileStatus;

    /**
     * @MetaData(value = "系统日期类型")
     */
    @TableField(value = "sys_date_type")
    @NotBlank(message = "{required}")
    @Size(max = 64, message = "{noMoreThan}")
    private String sysDateType;

    /**
     * @MetaData(value = "系统并发基数")
     */
    @TableField(value = "task_num")
    @NotBlank(message = "{required}")
    @Size(max = 2, message = "{noMoreThan}")
    private String taskNum;

    /**
     * @MetaData(value = "最晚到达时间(格式:HHMM)")
     */
    @TableField(value = "last_arrived_time")
    @Size(max = 4, message = "{noMoreThan}")
    private String lastArrivedTime;

    /**
     * @MetaData(value = "创建时间")
     */
    @TableField(value = "create_time")
    @NotBlank(message = "{required}")
    @Size(max = 20, message = "{noMoreThan}")
    private String createTime;

    /**
     * @MetaData(value = "备用字段1")
     */
    @TableField(value = "remark1")
    @Size(max = 64, message = "{noMoreThan}")
    private String remark1;

    /**
     * @MetaData(value = "备用字段2")
     */
    @TableField(value = "remark2")
    @Size(max = 128, message = "{noMoreThan}")
    private String remark2;

    /**
     * @MetaData(value = "审核状态")
     */
    @TableField(value = "audit_status")
    @NotBlank(message = "{required}")
    @Size(max = 2, message = "{noMoreThan}")
    private String auditStatus;

    /**
     * @MetaData(value = "使用状态")
     */
    @TableField(value = "status")
    @NotBlank(message = "{required}")
    @Size(max = 2, message = "{noMoreThan}")
    private String status;

    /**
     * @MetaData(value = "操作人代号")
     */
    @TableField(value = "opr_id")
    @NotBlank(message = "{required}")
    @Size(max = 32, message = "{noMoreThan}")
    private String oprId;

    /**
     * @MetaData(value = "复核人代号")
     */
    @TableField(value = "audit_opr_id")
    @Size(max = 32, message = "{noMoreThan}")
    private String auditOprId;

    /**
     * @MetaData(value = "修改时间")
     */
    @TableField(value = "update_time")
    @Size(max = 19, message = "{noMoreThan}")
    private String updateTime;

    /**
     * @MetaData(value = "审核时间")
     */
    @TableField(value = "audit_time")
    @Size(max = 19, message = "{noMoreThan}")
    private String auditTime;

    /**
     * @MetaData(value = "失败原因")
     */
    @TableField(value = "audit_refuse_reason")
    @Size(max = 512, message = "{noMoreThan}")
    private String auditRefuseReason;

}
